Market Imbalance Tracker (Inefficient Candle + FVG)# 📊 Overview
This indicator combines two imbalance concepts:
• **Squared Up Points (SUP)** – midpoints of large, "inefficient" candles that often attract price back.
• **Fair Value Gaps (FVG)** – 3-candle gaps created by strong impulse moves that often get "filled."
Use them separately or together. Confluence between a SUP line and an FVG boundary/midpoint is high-value.
---
# ⚡ Quick Start (2 minutes)
1. **Add to chart** → keep defaults (Percentile method, 80th percentile, 100-bar lookback).
2. **Watch** for dashed SUP lines to print after large candles.
3. **Toggle Show FVG** → see green/red boxes where gaps exist.
4. **Turn on alerts** → New SUP created, SUP touched, New FVG.
5. **Trade the reaction** → look for confluence (SUP + FVG + S/R), then manage risk.
---
# 🛠 Features
## 🔹 Squared Up Points (SUP)
• **Purpose:** Midpoint of a large candle → potential support/resistance magnet.
• **Detection:** Choose *Percentile* (adaptive) or *ATR Multiple* (absolute).
• **Validation:** Only plots if the preceding candle does not touch the midpoint (with tolerance).
• **Lifecycle:** Line auto-extends into the future; it's removed when touched or aged out.
• **Visual:** Horizontal dashed line (color/width configurable; style fixed to dashed if not exposed).
## 🔹 Fair Value Gaps (FVG)
• **Purpose:** 3-candle gaps from an impulse; price often revisits to "fill."
• **Detection:** Requires a strong directional candle (Marubozu threshold) creating a gap.
• **Types:**
- **Bullish FVG (Green):** Gap below; expectation is downward fill.
- **Bearish FVG (Red):** Gap above; expectation is upward fill.
• **Close Rules (if implemented):**
- *Full Fill:* Gap closes when the opposite boundary is tagged.
- *Midpoint Fill:* Gap closes when its midpoint is tagged.
• **Visual:** Colored boxes; optional split-coloring to emphasize the midpoint.
> **Note:** If a listed FVG option isn't visible in Inputs, you're on a lighter build; use the available switches.
---
# ⚙️ Settings
## SUP Settings
• **Candle Size Method:** Percentile (top X% of recent ranges) or ATR Multiple.
• **Candle Size Percentile:** e.g., 80 → top 20% largest candles.
• **ATR Multiple & Period:** e.g., 1.5 × ATR(14).
• **Percentile Lookback:** Bars used to compute percentile.
• **Lookback Period:** How long SUP lines remain eligible before auto-cleanup.
• **Touch Tolerance (%):** Buffer based on the inefficient candle's range (0% = exact touch).
## Line Appearance
• **Line Color / Width:** Customizable.
• **Style:** Dashed (fixed unless you expose a style input).
## FVG Settings (if present in your build)
• **Show FVG:** On/Off.
• **Close Method:** Full Fill or Midpoint.
• **Marubozu Wick Tolerance:** Max wick % of the impulse bar.
• **Use Split Coloring:** Two-tone box halves around midpoint.
• **Colors:** Bullish/Bearish, and upper/lower halves (if split).
• **Max FVG Age:** Auto-remove older gaps.
---
# 📈 How to Use
## Trading Applications
• **SUP Lines:** Expect reaction on first touch; use as S/R or profit-taking magnets.
• **FVG Fills:** Price frequently tags the midpoint/boundary before continuing.
• **Confluence:** SUP at an FVG midpoint/boundary + higher-timeframe S/R = higher quality.
• **Bias:** Clusters of unfilled FVGs can hint at path of least resistance.
## Best Practices
• **Timeframe:** HTFs for swing levels, LTFs for execution.
• **Volume:** High volume at level = stronger signal.
• **Context:** Trade with broader trend or at least avoid counter-trend without confirmation.
• **Risk:** Always pre-define invalidation; structures fail in chop.
---
# 🔔 Alerts
• **New SUP Created** – When a qualifying inefficient candle prints a SUP midpoint.
• **SUP Touched/Invalidated** – When price touches within tolerance.
• **New FVG Detected** – When a valid gap forms per your rules.
> **Tip:** Set alerts *Once Per Bar Close* on HTFs; *Once* on LTFs to avoid noise.
---
# 🧑💻 Technical Notes
• **Percentile vs ATR:** Percentile adapts to volatility; ATR gives consistency for backtesting.
• **FVG Direction Logic:** Gap above price = bearish (expect up-fill); below = bullish (expect down-fill).
• **Performance:** Limits on lines/boxes and auto-aging keep things snappy.
---
# ⚠️ Limitations
• Imbalances are **context tools**, not signals by themselves.
• Works best with trend or clear impulses; expect noise in narrow ranges.
• Lower-timeframe gaps can be plentiful and lower quality.
---
# 📌 Version & Requirements
• **Pine Script v6**
• Heavy drawings may require **TradingView Pro** or higher (object limits).
---
*For best results, combine with your existing trading strategy and proper risk management.*
Cari skrip untuk "support resistance"
Reverse RSI Signals [AlgoAlpha]🟠 OVERVIEW
This script introduces the Reverse RSI Signals system, an original approach that inverts traditional RSI values back into price levels and then overlays them directly on the chart as dynamic bands. Instead of showing RSI in a subwindow, the script calculates the exact price thresholds that correspond to common RSI levels (30/70/50) and displays them as upper, lower, and midline bands. These are further enhanced with an adaptive Supertrend filter and divergence detection, allowing traders to see overbought/oversold zones translated into actionable price ranges and trend signals. The script combines concepts of RSI inversion, volatility envelopes, and divergence tracking to provide a context-driven tool for spotting reversals and regime shifts.
🟠 CONCEPTS
The script relies on inverting RSI math: by solving for the price that would yield a given RSI level, it generates real chart levels tied to oscillator conditions. These RSI-derived price bands act like support/resistance, adapting each bar as RSI changes. On top of this, a Supertrend built around the RSI midline introduces directional bias, switching regimes when the midline is breached. Regular bullish and bearish divergences are detected by comparing RSI pivots against price pivots, highlighting early reversal conditions. This layered approach means the indicator is not just RSI on price but a hybrid of oscillator translation, volatility-tracking midline envelopes, and divergence analysis.
🟠 FEATURES
Inverted RSI bands: upper (70), lower (30), and midline (50), smoothed with EMA for noise reduction.
Supertrend overlay on the RSI midline to confirm regime direction (bullish or bearish).
Gradient-filled zones between outer and inner RSI bands to visualize proximity and exhaustion.
Non-repainting bullish and bearish divergence markers plotted directly on chart highs/lows.
🟠 USAGE
Apply the indicator to any chart and use the plotted RSI price bands as adaptive support/resistance. The midline defines equilibrium, while upper and lower bands represent classic RSI thresholds translated into real price action. In bullish regimes (green candles), long trades are stronger when price approaches or bounces from the lower band; in bearish regimes (red candles), shorts are favored near the upper band. Divergence markers (▲ for bullish, ▼ for bearish) flag potential reversal points early. Traders can combine the band proximity, divergence alerts, and Supertrend context to time entries, exits, or to refine ongoing trend trades. Adjust smoothing and Supertrend ATR settings to match the volatility of the instrument being analyzed.
XAUUSD Strength Dashboard with VolumeXAUUSD Strength Dashboard with Volume Analysis
📌 Description
This advanced Pine Script indicator provides a multi-timeframe dashboard for XAUUSD (Gold vs. USD), combining price action analysis with volume confirmation to generate high-probability trading signals. It detects:
✅ Break of Structure (BOS)
✅ Fair Value Gaps (FVG)
✅ Change of Character (CHOCH)
✅ Trendline Breaks (9/21 SMA Crossover)
✅ Volume Spikes (Confirmation of Strength)
The dashboard displays strength scores (0-100%) and action recommendations (Strong Buy/Buy/Neutral/Sell/Strong Sell) across multiple timeframes, helping traders identify confluences for better trade decisions.
🎯 How It Works
1. Multi-Timeframe Analysis
Fetches data from 1m, 5m, 15m, 30m, 1h, 4h, Daily, and Weekly timeframes.
Compares trend direction, BOS, FVG, CHOCH, and volume spikes across all timeframes.
2. Volume-Confirmed Strength Score
The Strength Score (0-100%) is calculated using:
Trend Direction (25 points) → 9 SMA vs. 21 SMA
Break of Structure (20 points) → New highs/lows with momentum
Fair Value Gaps (10 points) → Imbalance zones
Change of Character (10 points) → Shift in market structure
Trendline Break (20 points) → SMA crossover confirmation
Volume Spike (15 points) → High volume confirms moves
Score Interpretation:
≥75% → Strong Buy (High confidence bullish move)
60-74% → Buy (Bullish but weaker confirmation)
40-59% → Neutral (No strong bias)
25-39% → Sell (Bearish but weaker confirmation)
≤25% → Strong Sell (High confidence bearish move)
3. Dashboard & Chart Markers
Dashboard Table: Shows Trend, BOS, Volume, CHOCH, TL Break, Strength %, Key Level, and Action for each timeframe.
Chart Markers:
🟢 Green Triangles → Bullish BOS
🔴 Red Triangles → Bearish BOS
🟢 Green Circles → Bullish CHOCH
🔴 Red Circles → Bearish CHOCH
📈 Green Arrows → Bullish Trendline Break
📉 Red Arrows → Bearish Trendline Break
"Vol↑" (Lime) → Bullish Volume Spike
"Vol↓" (Maroon) → Bearish Volume Spike
🚀 How to Use
1. Dashboard Interpretation
Higher Timeframes (D/W) → Show the dominant trend.
Lower Timeframes (1m-4h) → Help with entry timing.
Strength Score ≥75% or ≤25% → Look for high-confidence trades.
Volume Spikes → Confirm breakouts/reversals.
2. Trading Strategy
📈 Long (Buy) Setup:
Higher TFs (D/W/4h) show bullish trend (↑).
Current TF has BOS & Volume Spike.
Strength Score ≥60%.
Key Level (Low) holds as support.
📉 Short (Sell) Setup:
Higher TFs (D/W/4h) show bearish trend (↓).
Current TF has BOS & Volume Spike.
Strength Score ≤40%.
Key Level (High) holds as resistance.
3. Customization
Adjust Volume Spike Multiplier (Default: 1.5x) → Controls sensitivity to volume spikes.
Toggle Timeframes → Enable/disable higher/lower timeframes.
🔑 Key Benefits
✔ Multi-Timeframe Confluence → Avoids false signals.
✔ Volume Confirmation → Filters low-quality breakouts.
✔ Clear Strength Scoring → Removes emotional bias.
✔ Visual Chart Markers → Easy to spot key signals.
This indicator is ideal for gold traders who follow institutional order flow, market structure, and volume analysis to improve their trading decisions.
🎯 Best Used With:
Support/Resistance Levels
Fibonacci Retracements
Price Action Confirmation
🚀 Happy Trading! 🚀
MR.Z Strategy Reversal Signal Nadaraya SMA)Nadaraya-Watson Envelope (NW Envelope):
A smoothed, non-linear dynamic envelope that adapts to price structure. It visually identifies price extremes using kernel regression. The upper and lower bands move with the chart and provide reliable dynamic support and resistance.
EMA Levels:
Includes three key exponential moving averages:
EMA 50 (short-term trend)
EMA 100 (medium-term)
EMA 200 (long-term, institutional level)
Fully Scrollable and Responsive:
All lines and envelopes are plotted using plot() so they move with the chart and respond to zoom and pan actions naturally.
🧠 Ideal Use:
Identify reversal zones, dynamic support/resistance, and trend momentum exhaustion.
Combine WTB and NW Envelope for confluence-based entries.
Use EMA structure for trend confirmation or breakout anticipation.
Let me know if you'd like to add:
Divergence detection
Buy/Sell signals
Alerts or signal filtering options
I’ll be happy to extend the description or the script accordingly!
Support & Resistance External/Internal & BoS [sgbpulse]Market Structure Support & Resistance External/Internal & BoS
Overview: Smart & Fast Market Structure Analysis
The Market Structure "Support & Resistance External/Internal & BoS " indicator is designed to empower your technical analysis by automatically and precisely identifying significant support and resistance levels. It achieves this by pinpointing high and low Pivot Points, plus key Pre-Market High/Low levels.
Its unique strength lies in its dynamic adaptability to any timeframe and any asset you choose. This tool analyzes the relevant market structure for the current timeframe and asset, providing you with accurate and relevant levels in real-time. The indicator maintains a clean chart and swiftly displays all support, resistance, and Pre-Market levels for any asset, saving valuable analysis time and enabling you to get a clear and quick snapshot of the market.
How the Indicator Works
The indicator identifies and displays three critical types of key levels:
External Pivots: These are more significant pivot points, indicating important reversal points across a broader range of price movement, considering the current timeframe. The indicator draws dark green support lines (for low pivots) and dark red resistance lines (for high pivots) from these points.
Internal Pivots: These are shorter-term pivot points, signifying smaller corrections or reversals within the overall structure of the current timeframe. These lines provide additional areas of interest within the ranges of the External Pivots.
Pre-Market High/Low Levels: The indicator displays the High and Low reached during pre-market hours as distinct lines on the chart. Please note: These levels will only appear when the selected timeframe is lower than one day (e.g., 1-hour, 15-minute) and provided that the "Session extended trading hours" option is enabled in your TradingView chart settings. These levels are crucial for identifying potential opening ranges and critical support/resistance areas upon regular market open, especially for intraday trading.
Break of Structure (BoS) Identification
A key feature of this indicator is its ability to identify Break of Structure (BoS). When a support or resistance line is breached, the indicator changes the line's color to gray and displays a "Break of Structure" label, indicating a potential trend change or continuation:
External BoS: When an external support/resistance line is broken, a "BoS" label in red will appear. This is a strong signal for a potential shift in the primary market structure or a strong trend continuation.
Internal BoS: When an internal support/resistance line is broken, an "iBoS" label in green will appear. This indicates a break within the existing market structure, which can be used to confirm direction or identify shorter-term entry/exit opportunities.
Full Indicator Customization
The indicator provides maximum flexibility to suit any trading style and timeframe:
Number of Lines Displayed: You can choose how many support and resistance lines you want to see on your chart. The default is 15 lines, but you can increase or decrease this number according to your needs and desired level of detail.
External Pivot Settings: Define the number of bars before and after a pivot point required for External Pivot identification.
Internal Pivot Settings: Define the number of bars before and after a pivot point required for Internal Pivot identification.
Color Customization: Full control over colors! You can change the colors of the support and resistance lines, the colors of the Pre-Market levels, and also the colors of the BoS and iBoS labels to create a visual appearance that perfectly matches your personal preferences.
This flexibility allows you to adapt the indicator to your trading style and any timeframe you operate in, without needing to manually change settings each time.
Recommended Uses
Clean Chart & Quick Analysis: The indicator displays important levels clearly, enabling quick identification of areas of interest without visual clutter on the chart. This significantly saves analysis time and allows you to make faster decisions.
Critical Levels for Any Timeframe & Asset: Get precise and adaptive support and resistance, plus essential Pre-Market levels (in relevant timeframes), for any timeframe and on any asset you choose.
Trend Direction Identification: Clear support and resistance lines help understand market structure.
Breakout Confirmation: The BoS label provides visual confirmation of key level breaches, helping to confirm potential trend changes.
Locating Entry & Exit Points: Use these levels as potential areas of interest for trades, after confirming a breakout or reversal.
Finding Stop-Loss & Take-Profit Points: Strategically place protective stops and profit targets around these support and resistance levels.
Important Note
Like any technical indicator, Market Structure "Support & Resistance External/Internal & BoS " is a supplementary tool. It's highly recommended to use it in conjunction with additional analysis methods (such as price action analysis, other indicators, and fundamental analysis) for informed trading decisions. Financial markets are dynamic, and trading always carries inherent risk.
Adaptive Volume‐Demand‐Index (AVDI)Demand Index (according to James Sibbet) – Short Description
The Demand Index (DI) was developed by James Sibbet to measure real “buying” vs. “selling” strength (Demand vs. Supply) using price and volume data. It is not a standalone trading signal, but rather a filter and trend confirmer that should always be used together with chart structure and additional indicators.
---
\ 1. Calculation Basis\
1. Volume Normalization
$$
\text{normVol}_t
= \frac{\text{Volume}_t}{\mathrm{EMA}(\text{Volume},\,n_{\text{Vol}})_t}
\quad(\text{e.g., }n_{\text{Vol}} = 13)
$$
This smooths out extremely high volume spikes and compares them to the average (≈ 1 means “average volume”).
2. Price Factor
$$
\text{priceFactor}_t
= \frac{\text{Close}_t - \text{Open}_t}{\text{Open}_t}.
$$
Positive values for bullish bars, negative for bearish bars.
3. Component per Bar
$$
\text{component}_t
= \text{normVol}_t \times \text{priceFactor}_t.
$$
If volume is above average (> 1) and the price rises slightly, this yields a noticeably positive value; conversely if the price falls.
4. Raw DI (Rolling Sum)
Over a window of \$w\$ bars (e.g., 20):
$$
\text{RawDI}_t
= \sum_{i=0}^{w-1} \text{component}_{\,t-i}.
$$
Alternatively, recursively for \$t \ge w\$:
$$
\text{RawDI}_t
= \text{RawDI}_{t-1}
+ \text{component}_t
- \text{component}_{\,t-w}.
$$
5. Optional EMA Smoothing
An EMA over RawDI (e.g., \$n\_{\text{DI}} = 50\$) reduces short-term fluctuations and highlights medium-term trends:
$$
\text{EMA\_DI}_t
= \mathrm{EMA}(\text{RawDI},\,n_{\text{DI}})_t.
$$
6.Zero Line
Handy guideline:
RawDI > 0: Accumulated buying power dominates.
RawDI < 0: Accumulated selling power dominates.
2. Interpretation & Application
Crossing Zero
RawDI above zero → Indication of increasing buying pressure (potential long signal).
RawDI below zero → Indication of increasing selling pressure (potential short signal).
Not to be used alone for entry—always confirm with price action.
RawDI vs. EMA_DI
RawDI > EMA\_DI → Acceleration of demand.
RawDI < EMA\_DI → Weakening of demand.
Divergences
Price makes a new high, RawDI does not make a higher high → potential weakness in the uptrend.
Price makes a new low, RawDI does not make a lower low → potential exhaustion of the downtrend.
3. Typical Signals (for Beginners)
\ 1. Long Setup\
RawDI crosses zero from below,
RawDI > EMA\_DI (acceleration),
Price closes above a short-term swing high or resistance.
Stop-Loss: just below the last swing low, Take-Profit/Trailing: on reversal signals or fixed R\:R.
2. Short Setup
RawDI crosses zero from above,
RawDI < EMA\_DI (increased selling pressure),
Price closes below a short-term swing low or support.
Stop-Loss: just above the last swing high.
---
4. Notes and Parameters
Recommended Values (Beginners):
Volume EMA (n₍Vol₎) = 13
RawDI window (w) = 20
EMA over DI (n₍DI₎) = 50 (medium-term) or 1 (no smoothing)
Attention:\
NEVER use in isolation. Always in combination with price action analysis (trendlines, support/resistance, candlestick patterns).
Especially during volatile news phases, RawDI can fluctuate strongly → EMA\_DI helps to avoid false signals.
---
Conclusion The Demand Index by James Sibbet is a powerful filter to assess price movements by their volume backing. It shows whether a rally is truly driven by demand or merely a short-term volume anomaly. In combination with classic chart analysis and risk management, it helps to identify robust entry points and potential trend reversals earlier.
Tight Range Display with Background🌟 Tight Range Transparency Display with Background
What Is This Indicator?
Hey traders! Ever wanted a simple way to spot those quiet, low-volatility moments in the market that often signal a big move is coming? The Tight Range Transparency Display with Background does exactly that! This indicator highlights periods where the price is moving in a tight range—think of it as the calm before the storm. It paints the chart background blue to show these zones, with the shade getting darker the tighter the range becomes. It’s like having a visual cue to say, “Hey, something might be brewing here!”
Why You’ll Love It
Spot Key Moments Easily: The blue background makes it super easy to see when the market is in a tight range, which often happens before breakouts or big trends.
Customizable Settings: You can tweak the range thresholds to match your trading style—whether you’re looking for super tight zones or slightly broader ones.
Visual Clarity: The background gets darker when the range is tighter, giving you a quick sense of how compressed the price action is.
Perfect for Any Market: Works on stocks, forex, crypto, or any chart you trade, across any timeframe.
How to Use It
Add It to Your Chart:
Just copy this script into TradingView’s Pine Editor and hit "Add to Chart." It’ll overlay right on your price chart.
Tweak the Settings:
Open the indicator settings and use the dropdown menus to pick your preferred "Tight Range %" and "Wide Range %." For example, set a Tight Range % of 2.0% to catch smaller ranges, or go higher like 10.0% for broader ones.
You can also adjust the ATR Period (default is 5) to make the indicator more or less sensitive to recent price swings.
Watch for the Blue Background:
When the price enters a tight range, the chart background turns blue. The darker the blue, the tighter the range—meaning a potential breakout could be closer!
Trade Smarter:
Use these tight range zones to prepare for potential breakouts. For example, if you see a dark blue background, it might be a good time to watch for a big price move.
Pair this with other tools like support/resistance levels or volume spikes to confirm your trades.
Who Is This For?
Swing Traders: Perfect for spotting consolidation zones before a big swing.
Breakout Traders: Tight ranges often lead to breakouts—use this to time your entries.
Smart Money Followers: If you’re into smart money concepts, tight ranges can signal accumulation or distribution phases.
Beginners & Pros Alike: It’s easy to use for new traders but powerful enough for seasoned pros.
Real-World Example
Imagine you’re trading a stock on a 1-hour chart. You notice the background turns blue, and it’s getting darker over a few bars. This tells you the price range is tightening—maybe the stock is consolidating after a big move. You check your other indicators, see a volume spike, and spot a breakout above resistance. Boom! You catch the next big trend, all because this indicator helped you focus on the right moment.
Tips for Best Results
Try Different Timeframes: Tight ranges on a 15-minute chart might signal short-term moves, while a daily chart could highlight bigger trends.
Adjust for Your Market: For volatile markets like crypto, you might want a higher Tight Range % (e.g., 10.0%). For calmer markets like forex, try a lower setting (e.g., 2.0%).
Combine with Other Tools: Use this alongside trendlines, moving averages, or volume indicators to confirm your setups.
Why I Made This
I created this indicator because I wanted a simple, visual way to spot those critical low-volatility zones without cluttering my chart. The dynamic background color makes it intuitive to see when the market is “coiling up” for a potential move. I hope it helps you find better trading opportunities just like it does for me!
Let’s Connect
If you find this indicator helpful, I’d love to hear about it! Drop a comment or a rating to let me know how it’s working for you. Got ideas to make it even better? Feel free to message me on TradingView—I’m always open to suggestions.
Published On
Date: May 22, 2025
Happy trading, and may your charts always be in your favor! 🚀
How to Publish on TradingView
Open Pine Editor:
On TradingView, open a chart and go to the Pine Editor tab at the bottom.
Paste the Code:
Copy the script you provided and paste it into the Pine Editor.
Compile:
Click "Add to Chart" to ensure it compiles without errors.
Publish:
Click the "Publish Script" button (paper plane icon) in the Pine Editor.
Select "Publish New Script."
Add the Description:
Title: "Tight Range Transparency Display with Background"
Description: Copy the content above into the description field.
Visibility: Choose "Public" to share with everyone (or "Invite-Only" for restricted access).
Tags: Add tags like "tight range", "breakout", "smart money", "volatility", "swing trading".
Screenshot: Add a screenshot of the indicator on a chart, showing the blue background during a tight range.
Submit:
Click "Publish" to submit. TradingView will review it and make it live if it meets their guidelines.
Additional Notes
Screenshot Tip: Use a chart where the blue background is clearly visible (e.g., during a consolidation period) to make the indicator’s effect stand out.
Engage with Users: After publishing, respond to comments and feedback to build a positive reputation on TradingView.
This content is designed to be approachable and engaging, helping traders understand the value of your indicator and encouraging them to try it out.
VWAP Breakout Strategy + EMAs + Clean Cycle/TP/SL PlotsHere’s a quick user-guide to get you up and running with your “VWAP Breakout Strategy + EMAs + Clean Cycle/TP/SL Plots” script in TradingView:
⸻
1. Installing the Script
1. Open TradingView, go to Pine Editor (bottom panel).
2. Paste in your full Pine-v6 code and hit Add to chart.
3. Save it (“Save as…”): give it a memorable name (e.g. “VWAP Breakout+EMAs”).
⸻
2. Configuring Your Inputs
Once it’s on the chart, click the ⚙️ Settings icon to tune:
Setting Default What it does
ATR Length 14 Period for average true range (volatility measure)
ATR Multiplier for Stop 1.5 How many ATRs away your stop-loss sits
TP1 / TP2 Multipliers (ATR) 1.0 / 2.0 Distance of TP1 and TP2 in ATR multiples
Show VWAP / EMAs On Toggles the blue VWAP line & EMAs (100/34/5)
Full Cycle Range Points 200 Height of the shaded “cycle zone”
Pivot Lookback 5 How many bars back to detect a pivot low
Round Number Step 500 Spacing of your dotted horizontal lines
Show TP/SL Labels On Toggles all the “ENTRY”, “TP1”, “TP2”, “STOP” tags
Feel free to adjust ATR multipliers and cycle-zone size based on the instrument’s typical range.
⸻
3. Reading the Signals
• Long Entry:
• Trigger: price crosses above VWAP
• You’ll see a green “Buy” tag at the low of the signal bar, plus an “ENTRY (Long)” label at the close.
• Stop is plotted as a red dashed line below (ATR × 1.5), and TP1/TP2 as teal and purple lines above.
• Short Entry:
• Trigger: price crosses below VWAP
• A red “Sell” tag appears at the high, with “ENTRY (Short)” at the close.
• Stop is the green line above; TP1/TP2 are dashed teal/purple lines below.
⸻
4. Full Cycle Zone
Whenever a new pivot low is detected (using your Pivot Lookback), the script deletes the old box and draws a shaded yellow rectangle from that low up by “Full Cycle Range Points.”
• Use this to visualize the “maximum expected swing” from your pivot.
• You can quickly see whether price is still traveling within a normal cycle or has overstretched.
⸻
5. Round-Number Levels
With Show Round Number Levels enabled, you’ll always get horizontal dotted lines at the nearest multiples of your “Round Number Step” (e.g. every 500 points).
• These often act as psychological support/resistance.
• Handy to see confluence with VWAP or cycle-zone edges.
⸻
6. Tips & Best-Practices
• Timeframes: Apply on any intraday chart (5 min, 15 min, H1…), but match your ATR length & cycle-points to the timeframe’s typical range.
• Backtest first: Use the Strategy Tester tab to review performance, tweak ATR multipliers or cycle size, then optimize.
• Combine with context: Don’t trade VWAP breakouts blindly—look for confluence (e.g. support/resistance zones, higher-timeframe trend).
• Label clutter: If too many labels build up, you can toggle Show TP/SL Labels off and rely just on the lines.
⸻
That’s it! Once you’ve added it to your chart and dialed in the inputs, your entries, exits, cycle ranges, and key levels will all be plotted automatically. Feel free to experiment with the ATR multipliers and cycle-zone size until it fits your instrument’s personality. Happy trading!
SuperTrade Ichimoku Cloud StrategyUnlike SuperTrade's Super Trend the Ichimoku Cloud Strategy is a trend-following system derived from the Ichimoku Kinko Hyo indicator. It helps identify market direction, momentum, and potential support/resistance zones. This strategy uses key components of the Ichimoku Cloud to determine bullish or bearish trends and executes trades accordingly.
🔍 Key Components Used
Conversion Line (Tenkan-sen) – short-term average (9-period Donchian midpoint by default)
Base Line (Kijun-sen) – medium-term average (26-period Donchian midpoint)
Leading Span A (Senkou Span A) – average of Conversion Line and Base Line, plotted forward by 26 periods.
Leading Span B (Senkou Span B) – 52-period Donchian midpoint, plotted forward by 26 periods.
Lagging Span (Chikou Span) – current close price, plotted backward by 26 periods (for visual reference only in this version).
The cloud (Kumo) is the area between Leading Span A and B, representing trend direction and potential support/resistance.
📈 Entry Rules (Buy Condition)
A long trade is entered when:
LeadLine1 > LeadLine2 → This implies a bullish cloud.
Close > LeadLine1 and Close > LeadLine2 → The price is trading above the cloud, confirming upward momentum.
This combination indicates a strong bullish trend, so the strategy enters a long position.
📉 Exit Rules (Sell Condition / Close Position)
The long trade is closed when:
LeadLine1 < LeadLine2 → This implies a bearish cloud.
Close < LeadLine1 and Close < LeadLine2 → The price has fallen below the cloud, signaling trend weakness or reversal.
This confirms a bearish trend, prompting the strategy to exit the long position.
✅ Must-Have Elements in This Strategy
Entry Logic – based on price position relative to the cloud and cloud direction.
Exit Logic – closes the position when price shifts to a bearish trend.
Overlay Enabled – plotted over price for visual confirmation of signals.
Dynamic Parameters – inputs for conversion/base/cloud lengths and displacement.
Visualization – plots all Ichimoku components including cloud fill for clarity.
No Shorting Logic Yet – this version only handles long trades; shorting can be added optionally.
No Stop-Loss or Take-Profit – trades are closed purely based on Ichimoku trend reversal.
Fibonacci Levels with MACD ConfirmationHow to Understand and Use the Fibonacci Levels with MACD Confirmation Script
This custom Pine Script is designed to give traders a clear visual framework by combining dynamic Fibonacci retracement levels, MACD histogram confirmation, and volatility-based swing zones. It aims to simplify trend analysis, improve entry timing, and adapt to various market conditions.
How to Interpret the 23.6% & 61.8% Labels
These Fibonacci levels represent key retracement zones where price often reacts during trend pullbacks or reversals.
The 23.6% level indicates a shallow retracement, useful in strong trends where price resumes early.
The 61.8% level is a deeper retracement, often a "last line of defense" before trend invalidation.
The script labels these zones with "CC 23.6" and "CC 61.8" when the price crosses them with MACD histogram confirmation:
Green label (CC) = bullish confirmation
Red label (CC) = bearish confirmation
How to Modify Inputs (Manual Adjustments)
Input Purpose Default How to Use
ATR Period Measures volatility 14 Increase for smoother, slower reactions; reduce for faster swings
Min Lookback Minimum bars for swing zone 20 Avoids short-term noise
Max Lookback Cap for swing zone scan 100 Avoids excessively wide retracement levels
Inverse Candle Chart Flips high/low logic false Enable for inverted analysis or backtesting "opposite logic"
How to Use the Inverse Candle Chart Option
Activating inverse mode flips candle logic:
Highs become negative lows, and vice versa.
Useful for:
Contrarian analysis
Inverse ETFs or short-biased views
Backtesting reverse-pattern behavior
How to Adjust the Style
You can manually personalize the script’s visual appearance:
Change line width in plot(..., linewidth=2) for bolder or thinner Fib levels.
Change colors from color.green, color.red, etc., to suit your theme.
Modify label.size, label.style, and label.color for different labeling visuals.
Customize MACD histogram style from plot.style_columns to other styles like style_histogram.
How the MACD is Set and Displayed
The MACD uses non-standard values:
Fast Length = 24
Slow Length = 52
Signal Smoothing = 18
These values slow down the indicator, reducing noise and aligning better with medium- to long-term trends.
MACD histogram is plotted directly on the main chart for faster, on-screen decision making.
Color-coded histogram:
Green/Lime = Bullish momentum increasing or steady
Red/Maroon = Bearish momentum increasing or steady
How to Use the Indicator in Real-World Trading
This indicator is most effective when used to:
✅ 1. Spot High-Probability Trend Continuation Zones
In a strong trend, price will often retrace to 23.6% or 61.8%, then resume.
Wait for:
Price to cross 23.6 or 61.8
MACD histogram rising (bullish) or falling (bearish)
"CC 23.6" or "CC 61.8" label to appear
🟢 Entry Example: Price retraces to Fib 61.8%, crosses up with green MACD histogram → take long position
✅ 2. Validate Reversal or Breakout Zones
These Fib levels also act as support/resistance.
If price crosses a Fib level but MACD fails to confirm, it may be a fake breakout.
Use confirmation labels only when MACD aligns.
✅ 3. Add Volatility Context (ATR) for Risk Management
The ATR label shows both value and %.
Use ATR to:
Set dynamic stop-losses (e.g., 1.5x ATR below entry)
Decide trade size based on volatility
How to Combine the Indicator With Other Tools
You can combine this script with other technical tools for a powerful trading framework:
🔁 With Moving Averages
Use 50/200 MA for overall trend direction
Take signals only in the direction of MA slope
🔄 With Price Action Patterns
Use the Fib/MACD signals at confluence points:
Support/resistance zones
Breakout retests
Candlestick patterns (pin bars, engulfing)
🔺 With Volume or Order Flow
Combine with volume spikes or order book signals
Confirm that Fib/MACD signals align with strong volume for conviction
✅ Trade Setup Summary
Criteria Long Setup Short Setup
Price at Fib Level At or crossing Fib 23.6 / 61.8 Same
MACD Histogram Rising and above previous bar Falling and below previous bar
Label Appears Green "CC 23.6" or "CC 61.8" Red "CC 23.6" or "CC 61.8"
Optional Filters Trend direction, ATR range, volume, price pattern Same
First EMA Touch (Last N Bars)Okay, here's a description of the "First EMA Touch (Last N Bars)" TradingView indicator:
Indicator Name: First EMA Touch (Last N Bars)
Core Purpose:
This indicator is designed to visually highlight on the chart the exact moment when the price (specifically, the high/low range of a price bar) makes contact with a specified Exponential Moving Average (EMA) for the first time within a defined recent lookback period (e.g., the last 20 bars).
How it Works:
EMA Calculation: It first calculates a standard Exponential Moving Average (EMA) based on the user-defined EMA Length and EMA Source (e.g., close price). This EMA line is plotted on the chart, often serving as a dynamic level of potential support or resistance.
"Touch" Detection: For every price bar, the indicator checks if the bar's range (from its low to its high) overlaps with or crosses the calculated EMA value for that bar. If low <= EMA <= high, it's considered a "touch".
"First Touch" Logic: This is the key feature. The indicator looks back over a specified number of preceding bars (defined by the Lookback Period). If a "touch" occurs on the current bar, and no "touch" occurred on any of the bars within that preceding lookback window, then the current touch is marked as the "first touch".
Visual Signal: When a "first touch" condition is met, the indicator plots a distinct shape (by default, a small green triangle) below the corresponding price bar. This makes it easy to spot these specific events.
Key Components & Settings:
EMA Line: The calculated EMA itself is plotted (typically as an orange line) for visual reference.
First Touch Signal: A shape (e.g., green triangle) appears below bars meeting the "first touch" criteria.
EMA Length (Input): Determines the period used for the EMA calculation. Shorter lengths make the EMA more reactive to recent price changes; longer lengths make it smoother and slower.
Lookback Period (Input): Defines how many bars (including the current one) the indicator checks backwards to determine if the current touch is the first one. A lookback of 20 means it checks if there was a touch in the previous 19 bars before signalling the current one as the first.
EMA Source (Input): Specifies which price point (close, open, high, low, hl2, etc.) is used to calculate the EMA.
Interpretation & Potential Uses:
Identifying Re-tests: The signal highlights when price returns to test the EMA after having stayed away from it for the duration of the lookback period. This can be significant as the market re-evaluates the EMA level.
Potential Reversal/Continuation Points: A first touch might indicate:
A potential area where a trend might resume after a pullback (if price bounces off the EMA).
A potential area where a reversal might begin (if price strongly rejects the EMA).
A point of interest if price consolidates around the EMA after the first touch.
Filtering Noise: By focusing only on the first touch within a period, it can help filter out repeated touches that might occur during choppy or consolidating price action around the EMA.
Confluence: Traders might use this signal in conjunction with other forms of analysis (e.g., horizontal support/resistance, trendlines, candlestick patterns, other indicators) to strengthen trade setups.
Limitations:
Lagging: Like all moving averages, the EMA is a lagging indicator.
Not Predictive: The signal indicates a specific past event (the first touch) occurred; it doesn't guarantee a future price movement.
Parameter Dependent: The effectiveness and frequency of signals heavily depend on the chosen EMA Length and Lookback Period. These may need tuning for different assets and timeframes.
Requires Confirmation: It's generally recommended to use this indicator as part of a broader trading strategy and not rely solely on its signals for trade decisions.
In essence, the "First EMA Touch (Last N Bars)" indicator provides a specific, refined signal related to price interaction with a moving average, helping traders focus on potentially significant initial tests of the EMA after a period of separation.
02 SMC + BB Breakout (Improved)This strategy combines Smart Money Concepts (SMC) with Bollinger Band breakouts to identify potential trading opportunities. SMC focuses on identifying key price levels and market structure shifts, while Bollinger Bands help pinpoint overbought/oversold conditions and potential breakout points. The strategy also incorporates higher timeframe trend confirmation to filter out trades that go against the prevailing trend.
Key Components:
Bollinger Bands:
Calculated using a Simple Moving Average (SMA) of the closing price and a standard deviation multiplier.
The strategy uses the upper and lower bands to identify potential breakout points.
The SMA (basis) acts as a centerline and potential support/resistance level.
The fill between the upper and lower bands can be toggled by the user.
Higher Timeframe Trend Confirmation:
The strategy allows for optional confirmation of the current trend using a higher timeframe (e.g., daily).
It calculates the SMA of the higher timeframe's closing prices.
A bullish trend is confirmed if the higher timeframe's closing price is above its SMA.
This helps filter out trades that go against the prevailing long-term trend.
Smart Money Concepts (SMC):
Order Blocks:
Simplified as recent price clusters, identified by the highest high and lowest low over a specified lookback period.
These levels are considered potential areas of support or resistance.
Liquidity Zones (Swing Highs/Lows):
Identified by recent swing highs and lows, indicating areas where liquidity may be present.
The Swing highs and lows are calculated based on user defined lookback periods.
Market Structure Shift (MSS):
Identifies potential changes in market structure.
A bullish MSS occurs when the closing price breaks above a previous swing high.
A bearish MSS occurs when the closing price breaks below a previous swing low.
The swing high and low values used for the MSS are calculated based on the user defined swing length.
Entry Conditions:
Long Entry:
The closing price crosses above the upper Bollinger Band.
If higher timeframe confirmation is enabled, the higher timeframe trend must be bullish.
A bullish MSS must have occurred.
Short Entry:
The closing price crosses below the lower Bollinger Band.
If higher timeframe confirmation is enabled, the higher timeframe trend must be bearish.
A bearish MSS must have occurred.
Exit Conditions:
Long Exit:
The closing price crosses below the Bollinger Band basis.
Or the Closing price falls below 99% of the order block low.
Short Exit:
The closing price crosses above the Bollinger Band basis.
Or the closing price rises above 101% of the order block high.
Position Sizing:
The strategy calculates the position size based on a fixed percentage (5%) of the strategy's equity.
This helps manage risk by limiting the potential loss per trade.
Visualizations:
Bollinger Bands (upper, lower, and basis) are plotted on the chart.
SMC elements (order blocks, swing highs/lows) are plotted as lines, with user-adjustable visibility.
Entry and exit signals are plotted as shapes on the chart.
The Bollinger band fill opacity is adjustable by the user.
Trading Logic:
The strategy aims to capitalize on Bollinger Band breakouts that are confirmed by SMC signals and higher timeframe trend. It looks for breakouts that align with potential market structure shifts and key price levels (order blocks, swing highs/lows). The higher timeframe filter helps avoid trades that go against the overall trend.
In essence, the strategy attempts to identify high-probability breakout trades by combining momentum (Bollinger Bands) with structural analysis (SMC) and trend confirmation.
Key User-Adjustable Parameters:
Bollinger Bands Length
Standard Deviation Multiplier
Higher Timeframe
Higher Timeframe Confirmation (on/off)
SMC Elements Visibility (on/off)
Order block lookback length.
Swing lookback length.
Bollinger band fill opacity.
This detailed description should provide a comprehensive understanding of the strategy's logic and components.
***DISCLAIMER: This strategy is for educational purposes only. It is not financial advice. Past performance is not indicative of future results. Use at your own risk. Always perform thorough backtesting and forward testing before using any strategy in live trading.***
ZigZag█ Overview
This Pine Script™ library provides a comprehensive implementation of the ZigZag indicator using advanced object-oriented programming techniques. It serves as a developer resource rather than a standalone indicator, enabling Pine Script™ programmers to incorporate sophisticated ZigZag calculations into their own scripts.
Pine Script™ libraries contain reusable code that can be imported into indicators, strategies, and other libraries. For more information, consult the Libraries section of the Pine Script™ User Manual.
█ About the Original
This library is based on TradingView's official ZigZag implementation .
The original code provides a solid foundation with user-defined types and methods for calculating ZigZag pivot points.
█ What is ZigZag?
The ZigZag indicator filters out minor price movements to highlight significant market trends.
It works by:
1. Identifying significant pivot points (local highs and lows)
2. Connecting these points with straight lines
3. Ignoring smaller price movements that fall below a specified threshold
Traders typically use ZigZag for:
- Trend confirmation
- Identifying support and resistance levels
- Pattern recognition (such as Elliott Waves)
- Filtering out market noise
The algorithm identifies pivot points by analyzing price action over a specified number of bars, then only changes direction when price movement exceeds a user-defined percentage threshold.
█ My Enhancements
This modified version extends the original library with several key improvements:
1. Support and Resistance Visualization
- Adds horizontal lines at pivot points
- Customizable line length (offset from pivot)
- Adjustable line width and color
- Option to extend lines to the right edge of the chart
2. Support and Resistance Zones
- Creates semi-transparent zone areas around pivot points
- Customizable width for better visibility of important price levels
- Separate colors for support (lows) and resistance (highs)
- Visual representation of price areas rather than just single lines
3. Zig Zag Lines
- Separate colors for upward and downward ZigZag movements
- Visually distinguishes between bullish and bearish price swings
- Customizable colors for text
- Width customization
4. Enhanced Settings Structure
- Added new fields to the Settings type to support the additional features
- Extended Pivot type with supportResistance and supportResistanceZone fields
- Comprehensive configuration options for visual elements
These enhancements make the ZigZag more useful for technical analysis by clearly highlighting support/resistance levels and zones, and providing clearer visual cues about market direction.
█ Technical Implementation
This library leverages Pine Script™'s user-defined types (UDTs) to create a robust object-oriented architecture:
- Settings : Stores configuration parameters for calculation and display
- Pivot : Represents pivot points with their visual elements and properties
- ZigZag : Manages the overall state and behavior of the indicator
The implementation follows best practices from the Pine Script™ User Manual's Style Guide and uses advanced language features like methods and object references. These UDTs represent Pine Script™'s most advanced feature set, enabling sophisticated data structures and improved code organization.
For newcomers to Pine Script™, it's recommended to understand the language fundamentals before working with the UDT implementation in this library.
█ Usage Example
//@version=6
indicator("ZigZag Example", overlay = true, shorttitle = 'ZZA', max_bars_back = 5000, max_lines_count = 500, max_labels_count = 500, max_boxes_count = 500)
import andre_007/ZigZag/1 as ZIG
var group_1 = "ZigZag Settings"
//@variable Draw Zig Zag on the chart.
bool showZigZag = input.bool(true, "Show Zig-Zag Lines", group = group_1, tooltip = "If checked, the Zig Zag will be drawn on the chart.", inline = "1")
// @variable The deviation percentage from the last local high or low required to form a new Zig Zag point.
float deviationInput = input.float(5.0, "Deviation (%)", minval = 0.00001, maxval = 100.0,
tooltip = "The minimum percentage deviation from a previous pivot point required to change the Zig Zag's direction.", group = group_1, inline = "2")
// @variable The number of bars required for pivot detection.
int depthInput = input.int(10, "Depth", minval = 1, tooltip = "The number of bars required for pivot point detection.", group = group_1, inline = "3")
// @variable registerPivot (series bool) Optional. If `true`, the function compares a detected pivot
// point's coordinates to the latest `Pivot` object's `end` chart point, then
// updates the latest `Pivot` instance or adds a new instance to the `ZigZag`
// object's `pivots` array. If `false`, it does not modify the `ZigZag` object's
// data. The default is `true`.
bool allowZigZagOnOneBarInput = input.bool(true, "Allow Zig Zag on One Bar", tooltip = "If checked, the Zig Zag calculation can register a pivot high and pivot low on the same bar.",
group = group_1, inline = "allowZigZagOnOneBar")
var group_2 = "Display Settings"
// @variable The color of the Zig Zag's lines (up).
color lineColorUpInput = input.color(color.green, "Line Colors for Up/Down", group = group_2, inline = "4")
// @variable The color of the Zig Zag's lines (down).
color lineColorDownInput = input.color(color.red, "", group = group_2, inline = "4",
tooltip = "The color of the Zig Zag's lines")
// @variable The width of the Zig Zag's lines.
int lineWidthInput = input.int(1, "Line Width", minval = 1, tooltip = "The width of the Zig Zag's lines.", group = group_2, inline = "w")
// @variable If `true`, the Zig Zag will also display a line connecting the last known pivot to the current `close`.
bool extendInput = input.bool(true, "Extend to Last Bar", tooltip = "If checked, the last pivot will be connected to the current close.",
group = group_1, inline = "5")
// @variable If `true`, the pivot labels will display their price values.
bool showPriceInput = input.bool(true, "Display Reversal Price",
tooltip = "If checked, the pivot labels will display their price values.", group = group_2, inline = "6")
// @variable If `true`, each pivot label will display the volume accumulated since the previous pivot.
bool showVolInput = input.bool(true, "Display Cumulative Volume",
tooltip = "If checked, the pivot labels will display the volume accumulated since the previous pivot.", group = group_2, inline = "7")
// @variable If `true`, each pivot label will display the change in price from the previous pivot.
bool showChgInput = input.bool(true, "Display Reversal Price Change",
tooltip = "If checked, the pivot labels will display the change in price from the previous pivot.", group = group_2, inline = "8")
// @variable Controls whether the labels show price changes as raw values or percentages when `showChgInput` is `true`.
string priceDiffInput = input.string("Absolute", "", options = ,
tooltip = "Controls whether the labels show price changes as raw values or percentages when 'Display Reversal Price Change' is checked.",
group = group_2, inline = "8")
// @variable If `true`, the Zig Zag will display support and resistance lines.
bool showSupportResistanceInput = input.bool(true, "Show Support/Resistance Lines",
tooltip = "If checked, the Zig Zag will display support and resistance lines.", group = group_2, inline = "9")
// @variable The number of bars to extend the support and resistance lines from the last pivot point.
int supportResistanceOffsetInput = input.int(50, "Support/Resistance Offset", minval = 0,
tooltip = "The number of bars to extend the support and resistance lines from the last pivot point.", group = group_2, inline = "10")
// @variable The width of the support and resistance lines.
int supportResistanceWidthInput = input.int(1, "Support/Resistance Width", minval = 1,
tooltip = "The width of the support and resistance lines.", group = group_2, inline = "11")
// @variable The color of the support lines.
color supportColorInput = input.color(color.red, "Support/Resistance Color", group = group_2, inline = "12")
// @variable The color of the resistance lines.
color resistanceColorInput = input.color(color.green, "", group = group_2, inline = "12",
tooltip = "The color of the support/resistance lines.")
// @variable If `true`, the support and resistance lines will be drawn as zones.
bool showSupportResistanceZoneInput = input.bool(true, "Show Support/Resistance Zones",
tooltip = "If checked, the support and resistance lines will be drawn as zones.", group = group_2, inline = "12-1")
// @variable The color of the support zones.
color supportZoneColorInput = input.color(color.new(color.red, 70), "Support Zone Color", group = group_2, inline = "12-2")
// @variable The color of the resistance zones.
color resistanceZoneColorInput = input.color(color.new(color.green, 70), "", group = group_2, inline = "12-2",
tooltip = "The color of the support/resistance zones.")
// @variable The width of the support and resistance zones.
int supportResistanceZoneWidthInput = input.int(10, "Support/Resistance Zone Width", minval = 1,
tooltip = "The width of the support and resistance zones.", group = group_2, inline = "12-3")
// @variable If `true`, the support and resistance lines will extend to the right of the chart.
bool supportResistanceExtendInput = input.bool(false, "Extend to Right",
tooltip = "If checked, the lines will extend to the right of the chart.", group = group_2, inline = "13")
// @variable References a `Settings` instance that defines the `ZigZag` object's calculation and display properties.
var ZIG.Settings settings =
ZIG.Settings.new(
devThreshold = deviationInput,
depth = depthInput,
lineColorUp = lineColorUpInput,
lineColorDown = lineColorDownInput,
textUpColor = lineColorUpInput,
textDownColor = lineColorDownInput,
lineWidth = lineWidthInput,
extendLast = extendInput,
displayReversalPrice = showPriceInput,
displayCumulativeVolume = showVolInput,
displayReversalPriceChange = showChgInput,
differencePriceMode = priceDiffInput,
draw = showZigZag,
allowZigZagOnOneBar = allowZigZagOnOneBarInput,
drawSupportResistance = showSupportResistanceInput,
supportResistanceOffset = supportResistanceOffsetInput,
supportResistanceWidth = supportResistanceWidthInput,
supportColor = supportColorInput,
resistanceColor = resistanceColorInput,
supportResistanceExtend = supportResistanceExtendInput,
supportResistanceZoneWidth = supportResistanceZoneWidthInput,
drawSupportResistanceZone = showSupportResistanceZoneInput,
supportZoneColor = supportZoneColorInput,
resistanceZoneColor = resistanceZoneColorInput
)
// @variable References a `ZigZag` object created using the `settings`.
var ZIG.ZigZag zigZag = ZIG.newInstance(settings)
// Update the `zigZag` on every bar.
zigZag.update()
//#endregion
The example code demonstrates how to create a ZigZag indicator with customizable settings. It:
1. Creates a Settings object with user-defined parameters
2. Instantiates a ZigZag object using these settings
3. Updates the ZigZag on each bar to detect new pivot points
4. Automatically draws lines and labels when pivots are detected
This approach provides maximum flexibility while maintaining readability and ease of use.
WMA and Intraday Highest Volume Candle Levels🔹 WMA Calculation (Weighted Moving Averages)
Custom WMA Function:
Uses a manual weighted average calculation.
Assigns more weight to recent prices for smoother trend detection.
Three Timeframes:
5-Minute WMA (Yellow)
15-Minute WMA (Blue)
30-Minute WMA (Red)
🔹 Intraday Highest Volume Candle Levels
Finds the candle with the highest volume for the selected intraday timeframe.
Stores its High & Low levels to act as support/resistance.
Deletes and redraws lines daily to reflect the latest session's highest volume candle.
Plots horizontal lines:
Green Line: High of the highest volume candle.
Red Line: Low of the highest volume candle.
Customization: User can choose the analysis timeframe (default: 3 minutes).
✅ Benefits of This Indicator
✔ Multi-timeframe trend analysis using WMA.
✔ Key intraday levels based on highest volume candle.
✔ Dynamic support & resistance levels based on real-time volume activity.
✔ Customizable timeframe for volume analysis.
Daily ProtractorDaily Protractor Indicator
Overview
The Daily Protractor is a visually intuitive tool designed for traders who want to analyze price action through angular measurements on a 5-minute chart. By overlaying a protractor on the chart, this indicator helps identify potential support, resistance, and trend directions based on angular relationships from the first 5-minute candle of each day. It’s particularly useful for intraday traders looking to incorporate geometric analysis into their strategies for spot or strike charts.
Key Features
Dynamic Protractor Overlay: Draws a protractor centered on the low of the first 5-minute candle of each day, with customizable radius in both bars (horizontal) and price units (vertical).
Angular Measurements: Displays angles in 5-degree increments, covering a full 360° circle or a 105° to -105° (91° to 269°) half-circle, depending on user preference.
Customizable Display:
Adjust the number of days to display protractors (up to 5 days).
Customize line colors for different angle ranges (0° to 180°, 180° to 360°, and 0° specifically).
Modify line thickness, label size, and label colors for better visibility.
Center Point Highlight: Marks the center of each protractor with a labeled point for easy reference.
Efficient Design:
Optimized with max_lines_count, max_labels_count, and max_bars_back to ensure smooth performance on TradingView.
How It Works
The indicator identifies the first 5-minute candle of each day and uses its low price as the center point for a protractor. It then draws lines at 5-degree intervals, radiating from the center, with each line representing an angle from 0° to 360°. Labels at the end of each line display the angle in degrees, with negative values shown for angles between 195° and 345° (e.g., 270° is displayed as -90°). The protractor’s radius can be adjusted in both time (bars) and price units, allowing traders to scale the tool to their chart’s characteristics.
Usage Instructions
Add to Chart:
Apply the indicator to a 5-minute chart of your chosen instrument (e.g., spot or strike charts).
Interpret the Protractor:
Use the angular lines to identify potential price levels or trend directions.
The 0° line (horizontal) can act as a reference for horizontal support/resistance.
Angles between 0° and 180° (upper half) and 180° and 360° (lower half) are color-coded for quick identification.
Customize Settings:
Toggle the Show 105° to -105° option to display a half-circle (91° to 269°) instead of a full 360° protractor.
Adjust the Radius in Bars and Radius in Price Units to scale the protractor to your chart.
Set the Maximum Days to Display to control how many daily protractors are shown.
Modify line thickness, colors, and label settings to suit your visual preferences.
Customization Options
Protractor Settings:
Show 105° to -105° (91° to 269°): Toggle between a full circle or a half-circle protractor.
Radius in Bars: Set the horizontal span of the protractor (default: 75 bars).
Radius in Price Units: Set the vertical span in price units (default: 1000.0).
Maximum Days to Display: Limit the number of protractors shown (default: 5 days).
Line Settings:
Line Thickness: Adjust the thickness of the protractor lines (1 or 2).
Line Color (0° to 180°): Color for the upper half (default: light blue).
Line Color (180° to 360°): Color for the lower half (default: light red).
Line Color (0°): Color for the 0° line (default: black).
Label Settings:
Label Size: Choose between small, normal, or large labels.
Label Color (0° to 180°): Color for labels in the upper half (default: red).
Label Color (180° to 360°): Color for labels in the lower half (default: green).
Notes
The indicator was designed with the help of Grok3 for use on 5-minute charts only, as it relies on the first 5-minute candle of the day to set the protractor’s center.
For best results, adjust the radius settings to match the volatility and price scale of your instrument. However, where the price is in single digits it is advised to switch off the labels or I would suggest not to use the same.
The protractor can be used alongside other technical tools to confirm trends, reversals, or key price levels.
Limitations: This cannot be used on instruments that trade for more than 75 candles with a timeframe of 5 minutes as the angles would not cover the entire trading window. I am working coming up with a script to address this limitation.
Feedback
I’d love to hear your thoughts! If you find the Daily Protractor helpful or have suggestions for improvements, please leave a comment or reach out. Happy trading!
Dynamic Breakout Master by tradingbauhaus 🌟 Code Description:
This Pine Script implements a trading strategy called "Dynamic Breakout Master" 💥. The core idea of the strategy is to identify breakouts (price movements) at key support 💙 and resistance 🔴 levels, through a dynamic channel that adapts to the market’s conditions. Here's how it works:
🔧 Customizable Input Parameters:
🧭 Pivot Period: This defines the number of bars (candles) to the left and right used to detect pivots (highs and lows) that mark the support and resistance zones.
📊 Data Source: You can choose whether to use highs and lows or closes and opens of the candles to identify the pivots.
📏 Max Channel Width: Specifies the maximum width allowed for the support/resistance channel, expressed as a percentage over the last 300 bars.
💪 Minimum Pivot Strength: This defines the minimum number of pivots needed for a support or resistance level to be considered valid.
🏔 Max Support/Resistance Zones: Limits the number of key zones displayed on the chart.
📅 Lookback Period: Adjusts how many bars back the system should check to find and validate support and resistance levels.
🎨 Custom Colors: You can choose colors for the support, resistance, and in-channel zones.
📉 Moving Averages (MA): The strategy allows adding up to two moving averages (SMA or EMA) to assist in making trading decisions.
📊 Calculating Support/Resistance Levels:
The system uses an algorithm to identify pivots from prices and calculates dynamic support and resistance zones 🔒🔓.
The closer the pivots are and the stronger their influence, the more relevant the zone becomes for the strategy.
The dynamic channel is drawn on the chart, with a maximum width limit for these zones defined by the input parameter.
📈 Trading Logic:
🚀 Identifying Breakouts:
The strategy looks for when the price breaks (breakouts) a resistance or support level.
If the price breaks upward through the resistance level, a buy order 📈 is triggered.
If the price breaks downward through the support level, a sell order 📉 is triggered.
🔔 Alerts:
Resistance Break (ResBreak) and Support Break (SupBreak) alerts are configured to notify users when a significant breakout occurs.
💰 Commissions:
The strategy includes a commission (0.1%) to simulate transaction costs for each trade.
📊 Chart Visualization:
The support and resistance zones are displayed as colored rectangles:
🔴 Resistance (red) and
🔵 Support (blue).
Pivots of support and resistance can be labeled as P (for resistance) and V (for support).
Breakouts of support or resistance levels are marked with triangles that appear on the chart 🔺🔻.
📈 Trading Strategy:
If the price breaks upward through the resistance level, a long position (buy) 📈 is opened.
If the price breaks downward through the support level, a short position (sell) 📉 is opened.
🏆 Conclusion:
This script is a dynamic breakout strategy 💥 that allows traders to capture significant price movements when support or resistance channels break. The customizable parameters let users fine-tune the strategy according to their preferences, while the visual alerts on the chart make it easier to follow trading opportunities. The inclusion of moving averages and key price zones adds an extra layer of analysis to improve decision-making 💡.
Gann & Fibonacci Analysis for MSTRYes! Below is a step-by-step guide to performing Gann Analysis on MSTR in TradingView for the last year.
Step 1: Set Up the Chart
Open TradingView and search for MSTR (MicroStrategy).
Select the 1-day (D) timeframe to analyze the past year.
Set your chart to logarithmic scale (⚙ Settings → Scale → Log).
Enable grid lines for alignment (⚙ Settings → Appearance → Grid Lines).
Step 2: Identify Key Highs and Lows (Last Year)
Find the 52-week high and 52-week low for MSTR.
As of now:
52-Week High: ~$999 (March 2024).
52-Week Low: ~$280 (October 2023).
Step 3: Plot Gann Angles
Using TradingView's Gann Fan Tool:
Select "Gann Fan" (Press / and type “Gann Fan” to find it).
Start at the 52-week low (~$280, October 2023) and drag upwards.
Adjust the angles to match key levels:
1x1 (45°) → Main trendline
2x1 (26.5°) → Strong uptrend
4x1 (15°) → Weak trendline
1x2 (63.75°) → Strong resistance
Repeat the process from the 52-week high (~$999, March 2024) downward to see bearish angles.
Step 4: Apply Fibonacci & Gann Retracement Levels
Using Fibonacci Retracement:
Select "Fibonacci Retracement" tool.
Draw from 52-week high ($999) to 52-week low ($280).
Enable key Fibonacci levels:
23.6% ($816)
38.2% ($678)
50% ($640)
61.8% ($550)
78.6% ($430)
Watch for price reactions near these levels.
Using Gann Retracement Levels:
Select "Gann Box" in TradingView.
Draw from 52-week high ($999) to low ($280).
Enable key Gann retracement levels:
12.5% ($912)
25% ($850)
37.5% ($768)
50% ($640)
62.5% ($550)
75% ($480)
87.5% ($350)
Identify confluences with Gann angles and Fibonacci levels.
Step 5: Identify Significant Dates & Time Cycles
Use "Date Range" Tool in TradingView.
Mark major turning points:
High → Low: ~180 days (Half-year cycle).
Low → High: ~90 days (Quarter cycle).
Use Square-Outs (Time = Price method):
Example: If MSTR hit $500, check 500 days from key events.
Mark key anniversaries of past highs/lows for possible reversals.
Step 6: Analyze and Trade Execution
✅ If MSTR is at a Gann angle + Fibonacci level + key date → Expect a reaction.
✅ Use RSI, MACD, and Volume for extra confirmation.
✅ Set Stop-Loss at nearest Gann support/resistance.
D-LEVELS **FUTURECODE**The D-LEVELS indicator helps traders identify key price levels based on high-volume nodes and their relative positions to the current price. It visually displays these dynamic levels on the chart, offering insights into potential support, resistance, or zones of interest for trading decisions.
Key Features for Traders:
Dynamic Volume Nodes: Highlights high-volume price levels across different lookback periods, which can act as support or resistance.
Custom Alerts: Warns traders when price is within a specified percentage range of these levels.
Visual Cues: Uses labels and lines with customizable colors and widths for better chart clarity.
Table Display: Summarizes volume node price levels and their relative percentages for quick reference.
Customization: Flexible input options for text size, colors, and display settings to adapt to individual trading styles.
Use Case:
Traders can incorporate this indicator into their strategy to identify high-probability zones for entries, exits, or trade management by observing the interaction of price with these volume-based levels.
Uptrick: Zero Lag HMA Trend Suite1. Name and Purpose
Uptrick: Zero Lag HMA Trend Suite is a Pine Version 6 script that builds upon the Hull Moving Average (HMA) to offer an advanced trend analysis tool. Its purpose is to help traders identify trend direction, potential reversals, and overall market momentum with reduced lag compared to traditional moving averages. By combining the HMA with Average True Range (ATR) thresholds, slope-dependent coloring, Volume Weighted Average Price (VWAP) ribbons, and optional reversal signals, the script aims to give a detailed view of price activity in various market environments.
2. Overview
This script begins with the calculation of a Hull Moving Average, a method that blends Weighted Moving Averages in a way designed to cut down on lag while still smoothing out price fluctuations. Next, several enhancements are applied. The script compares current HMA values to previous ones for slope-based coloring, which highlights uptrends and downtrends at a glance. It also plots buy and sell signals when price moves beyond or below thresholds determined by the ATR and the user’s chosen signal multiplier. An optional VWAP ribbon can be shown to confirm bullish or bearish conditions relative to a volume-weighted benchmark. Additionally, the script can plot reversal signals (labeled with B) at points where price crosses back toward the HMA from above or below. Taken together, these elements allow traders to visualize both the short-term momentum and the broader context of how price interacts with volatility and overall market direction.
3. Why These Indicators Have Been Linked Together
The reason the Hull Moving Average, the Average True Range, and the VWAP have been integrated into one script is to tackle multiple facets of market analysis in a single tool. The Zero Lag Hull Moving Average provides a responsive trend line, the ATR offers a measure of volatility that helps distinguish significant price shifts from typical fluctuations, and the VWAP acts as a reference for fair value based on traded volume. By layering all three, the script helps traders avoid the need to juggle multiple separate indicators and offers a holistic perspective. The slope-based coloring focuses on trend direction, the ATR-based thresholds refine possible buy and sell zones, and the VWAP ribbons provide insight into how price stands relative to an important volume-weighted level. The inclusion of up and down signals and reversal B labels further refines entries and exits.
4. Why Use Uptrick: Zero Lag HMA Trend Suite
The Hull Moving Average is already known for reacting more quickly to price changes compared to other moving averages while retaining a degree of smoothness. This suite enhances the basic HMA by showing colored gradients that make it easy to spot trend direction changes, highlighting potential entry or exit points based on volatility-driven thresholds, and optionally layering a volume-based measure of bullish or bearish market sentiment. By relying on a zero lag approach and additional data points, the script caters to those wanting a more responsive method of identifying shifts in market dynamics. The added reversal signals and up or down alerts give traders extra confirmation for potential turning points.
5. How This Extension Improves on the Basic HMA
This extension not only plots the Hull Moving Average but also includes data-driven alerts and visual cues that traditional HMA lines do not provide. First, it offers multi-layered slope coloring, making up or down trends quickly apparent. Second, it uses ATR-based thresholds to pinpoint moments when price may be extending beyond normal volatility, thus generating buy or sell signals. Third, the script introduces an optional VWAP ribbon to indicate whether the market is trading above or below this pivotal volume-weighted benchmark, adding a further confirmation step for bullish or bearish conditions. Finally, it incorporates optional reversal signals labeled with B, indicating points where price might swing back toward the main HMA line.
6. Core Components
The script can be broken down into several primary functions and features.
a. Zero Lag HMA Calculation
Uses two Weighted Moving Averages (half-length and full-length) combined through a smoothing step based on the square root of the chosen length. This approach is designed to reduce lag significantly compared to other moving averages.
b. Slope Detection
Compares current and prior HMA values to determine if the trend is up or down. The slope-based coloring changes between turquoise shades for upward movement and magenta shades for downward movement, making trend direction immediately visible.
c. ATR-Based Thresholding for Up and Down Signals
The script calculates an Average True Range over a user-defined period, then multiplies it by a signal factor to form two bands around the HMA. When price crosses below the lower band, an up (buy) signal appears; when it crosses above the upper band, a down (sell) signal is shown.
d. Reversal Signals (B Labels)
Tracks when price transitions back toward the main HMA from an extreme zone. When enabled, these reversal points are labeled with a B and can help traders see potential turning points or mean-reversion setups.
e. VWAP Bands
An optional Volume Weighted Average Price ribbon that plots above or below the HMA, indicating bullish or bearish conditions relative to a volume-weighted price benchmark. This can also act as a kind of support/ resistance.
7. User Inputs
a. HMA Length
Controls how quickly the moving average responds to price changes. Shorter lengths react faster but can lead to more frequent signals, whereas longer lengths produce smoother lines.
b. Source
Specifies the price input, such as close or an alternative source, for the calculation. This can help align the HMA with specific trading strategies.
c. ATR Length and Signal Multiplier
Defines how the script calculates average volatility and sets thresholds for buy or sell alerts. Adjusting these values can help filter out noise or highlight more aggressive signals.
d. Slope Index
Determines how many bars to look back for detecting slope direction, influencing how sensitive the slope coloring is to small fluctuations.
e. Show Buy and Sell Signals, Reversal Signals, and VWAP
Lets users toggle the display of these features. Turning off certain elements can reduce chart clutter if traders prefer a simpler layout.
8. Calculation Process
The script’s calculation follows a step-by-step approach. It first computes two Weighted Moving Averages of the selected price source, one over half the specified length and one over the full length. It then combines these using 2*wma1 minus wma2 to reduce lag, followed by applying another weighted average using the square root of the length. Simultaneously, it computes the ATR for a user-defined period. By multiplying ATR by the signal multiplier, it establishes upper and lower bands around the HMA, where crossovers generate buy (up) or sell (down) signals. The script can also plot reversal signals (B labels) when price crosses back from these bands in the opposite direction. For the optional VWAP feature, Pine Script’s ta.vwap function is used, and differences between the HMA and VWAP levels determine the color and opacity of the ribbon.
9. Signal Generation and Filtering
The ATR-based thresholds reduce the influence of small, inconsequential price swings. When price falls below the lower band, the script issues an up (buy) signal. If price breaks above the upper band, a down (sell) signal appears. These signals are visible through labels placed near the bars. Reversal signals, labeled with B, can be turned on to help detect when price retraces from an extended area back toward the main HMA line. Traders can disable or enable these signals to match their preferred level of chart detail or risk tolerance.
10. Visualization on the Chart
The Zero HMA Lag Trend Suite aims for visual clarity. The HMA line is plotted multiple times with increasing transparency to create a gradient effect. Turquoise gradients indicate upward slopes, and magenta gradients signify downward slopes. Bar coloring can be configured to align with the slope direction, providing quick insight into current momentum. When enabled, buy or sell labels are placed under or above the bars as price crosses the ATR-defined boundaries. If the reversal option is active, B labels appear around areas where price changes direction. The optional VWAP ribbons form background bands, using distinct coloration to signal whether price is above or below the volume-weighted metric.
11. Market Adaptability
Because the script’s parameters (HMA length, ATR length, signal multiplier, and slope index) are user-configurable, it can adapt to a wide range of markets and timeframes. Intraday traders may prefer a shorter HMA length for quick signals, while swing or position traders might use a longer HMA length to filter out short-lived price changes. The source setting can also be adjusted, allowing for specialized data inputs beyond just close or open values.
12. Risk Management Considerations
The script’s signals and labels are based on past price data and volatility readings, and they do not guarantee profitable outcomes. Sharp market reversals or unforeseen fundamental events can produce false signals. Traders should combine this tool with broader risk management strategies, including stop-loss placement, position sizing, and independent market analyses. The Zero HMA Lag Trend Suite can help highlight potential opportunities, but it should not be relied upon as the sole basis for trade decisions.
13. Combining with Other Tools
Many traders choose to verify signals from the Zero HMA Lag Trend Suite using popular indicators like the Relative Strength Index (RSI), Moving Average Convergence Divergence (MACD), or even simple volume-based metrics to confirm whether a price movement has sufficient momentum. Conventional techniques such as support and resistance levels, chart patterns, or candlestick analysis can also supplement signals generated by the script’s up, down, or reversal B labels.
14. Parameter Customization and Examples
a. Short-Term Day Trading
Using a shorter HMA length (for instance, 9 or 14) and a slightly higher ATR multiplier might provide timely buy and sell signals, though it may also produce more whipsaws in choppy markets.
b. Swing or Position Trading
Selecting a longer HMA length (such as 50 or 100) with a moderate ATR multiplier can help users track more significant and sustained market moves, potentially reducing the effect of minor fluctuations.
c. Multiple Timeframe Blends
Some traders load two versions of the indicator on the same chart, one for short-term signals (with frequent B label reversals) and another for the broader trend direction, aligning entry and exit decisions with the bigger picture.
15. Realistic Expectations
Even though the Hull Moving Average helps minimize lag and the script incorporates volatility-based filters and optional VWAP overlays, it cannot predict future market behavior with complete accuracy. Periods of low liquidity or sudden market shocks can still lead to signals that do not reflect longer-term trends. Frequent parameter review and manual confirmation are advised before executing trades based solely on the script’s outputs.
16. Theoretical Background
The Hull Moving Average formula aims to balance smoothness with reactivity, accomplished by combining Weighted Moving Averages at varying lengths. By subtracting a slower average from a faster one and then applying another smoothing step with the square root of the original length, the HMA is designed to respond more promptly to price changes than typical exponential or simple moving averages. The ATR component, introduced by J. Welles Wilder, calculates the average range of price movement over a user-defined period, allowing the script to assess volatility and adapt signals accordingly. VWAP provides a volume-weighted benchmark that many institutional traders track to gauge fair intraday value.
17. Originality and Uniqueness
Although multiple HMA-based indicators can be found, Uptrick: Zero Lag HMA Trend Suite sets itself apart by merging slope-based coloring, ATR thresholds, VWAP ribbons, up or down labels, and optional reversal signals all in one cohesive platform. This synergy aims to reduce chart clutter while still giving traders a comprehensive look at trend direction, volatility, and volume-based sentiment.
18. Summary
Uptrick: Zero Lag HMA Trend Suite is a specialized trading script designed to highlight potential market trends and reversals with minimal delay. It leverages the Hull Moving Average for an adaptive yet smooth price line, pairs ATR-based thresholds for detecting possible breakouts or dips, and provides VWAP-based ribbons for added volume-weighted context. Traders can further refine their entries and exits by enabling up or down signals and reversal labels (B) where price may revert toward the HMA. Suitable for a wide range of timeframes and instrument types, the script encourages a disciplined approach to trade management and risk control.
19. Disclaimer
This script is provided for informational and educational purposes only. Trading and investing involve significant financial risk, and no indicator can guarantee success under all conditions. Users should practice robust risk management, including the placement of stop losses and position sizing, and should confirm signals with additional analysis tools. The developer of this script assumes no liability for any trading decisions or outcomes resulting from its use.
Dynamic Support and Resistance Pivot Strategy The Dynamic Support and Resistance Pivot Strategy is a flexible and adaptive tool designed to identify short-term support and resistance levels using the concept of price pivots.
### Key Elements of the Strategy
1. Pivot points as support and resistance levels
Pivots are significant turning points on the price chart, often marking local highs and lows where the price has reversed direction. A pivot high occurs when the price forms a local peak, while a pivot low occurs when the price forms a local trough. When a new pivot high is formed, it creates a resistance level. Conversely, when a new pivot low is formed, it creates a support level.
The strategy continuously updates these levels as new pivots are detected, ensuring they remain relevant to the current market conditions. By identifying these price levels, the strategy dynamically adjusts to market conditions, allowing it to adapt to both trending and ranging markets, since it has a long target and can perform reversal operations.
2. Entry Criteria
- Buy (Long): A long position is triggered when the price is near the support level and then crosses it from below to above. This suggests that the price has found support and may start moving upwards.
- Sell (Short): A short position is triggered when the price is near the resistance level and then crosses it from above to below. This indicates that the price may be reversing and moving downward.
3. Support/Resistance distance (%)
- This parameter establishes a percentage range around the identified support and resistance level. For example, if the Support Resistance Distance is 0.4% (default), the closing price must be within a range of 0.4% above support or below the resistance to be considered "close" and trigger a trade.
4. Exit criteria
- Take profit = 27 %
- Stop loss = 10 %
- Reversal if a new entry point is identified in the opposite direction
5. No Repainting
- The Dynamic Support and Resistance Pivot Strategy is not subject to repainting.
6. Position Sizing by Equity and risk management
- This strategy has a default configuration to operate with 35% of the equity. The stop loss is set to 10% from the entry price. This way, the strategy is putting at risk about 10% of 35% of equity, that is, around 3.5% of equity for each trade. The percentage of equity and stop loss can be adjusted by the user according to their risk management.
7. Backtest results
- This strategy was subjected to backtest and operations in replay mode on **1000000MOGUSDT.P**, with the inclusion of transaction fees at 0.12% and slipagge of 5 ticks, and the past results have shown consistent profitability. Past results are no guarantee of future results. The strategy's backtest results may even be due to overfitting with past data.
8. Chart Visualization
- Support and resistance levels are displayed as green (support) and red (resistance) lines.
- Pivot prices are displayed as green (pivot low) and red (pivot high) labels.
In this image above, the Support/Resistance distance (%) parameter was set to 0.8.
9. Default Configuration
Chart Timeframe: 1h
Pivot Lengh: 2
Support/Resistance distance (%): 0.4*
Stop Loss: 10 %
Take Profit: 27 %
* This parameter can alternatively be set to 0.8.
10. Alternative Configuration
Chart Timeframe: 20 min
Pivot Lengh: 4
Support/Resistance distance (%): 0.1
Stop Loss: 10 %
Take Profit: 25 %
BYBIT:1000000MOGUSDT.P
Intrabar BoxPlotThe Intrabar BoxPlot publication highlights an uncommon technique by displaying statistical intrabar Lower Timeframe (LTF) values on the chart.
🔶 USAGE
🔹 Middle 50% Boxes
By showing the middle 50% intrabar values through a box, we can more easily see where the intrabar activity is mainly situated.
The middle 50% intrabar values are referred to from here on as Interquartile range (IQR).
In this example, the successive IQRs form a channel where the price eventually breaks out.
Disproportionately distributed values can give insights which can be used to find potential support/resistance areas.
IQR gaps can give valuable information as well. Potentially, the price can return to these gaps.
Seeing the IQR areas against regular candles gives an alternative image of the underlying price movements.
🔹 Highest volume Price level
The script displays the price level with the highest volume situated, dependable on the user's source setting. Setting the source at 'close' will only display intrabar close values; the same goes for high, low, ...
As seen in the above example, the volume levels can aid in finding support/resistance.
🔹 Median
The location of the median off all intrabar values is displayed as a coloured dot: green when the close price is higher than the opening price and red if otherwise. The median can give valuable insights into price movements.
🔹 Outliers
Medium (white dots) and extreme (white X) outliers, in combination with the IQR box, can help identify potential areas of interest.
🔹 Volume Delta
When there is a discrepancy between the delta volume and direction of the candle, this will be displayed as follows:
Green candle: when the sum of the volume of red intrabars is higher than the sum of the volume of green intrabars, the candle will be coloured orange.
Red candle: when the sum of the volume of green intrabars is higher than the sum of the volume of red intrabars, the candle will be coloured blue.
🔹 Highlight Boxplot only
Probably the easiest way to display boxplot only is by changing the Bar's style to Bars .
🔶 DETAILS
All intrabar values (Lower TimeFrame - LTF) are sorted and evaluated. Values can be close , high , low , ... by selecting this in Settings ( source ).
The middle 50% of all values are displayed as a box; this contains the values between percentile 25 (p25) and percentile 75 (p75). The value of percentile rank 75 means 75% of all values are lower. The value of percentile rank 25 means 25% of all values are lower, or 75% is higher.
The difference between p75 and p25 is also known as Interquartile range (IQR)
IQR is used to check for outliers.
Wiki: Boxplot , Interquartile range
Extreme high: maximum value, higher than p75 + IQR*3
Max outlier high: maximum value, higher than p75 + IQR*1.5 but lower than p75 + IQR*3
Max: maximum value, lower than p75 + IQR*1.5
Min: minimum value, higher than p25 - IQR*1.5
Min outlier low: minimum value, lower than p25 - IQR*1.5 but higher than p25 - IQR*3
Extreme low: minimum value, lower than p25 - IQR*3
Max and min must not be interpreted with the current candle high/low.
🔹 Example: Length of chart-puppets
The following example can make it easier to digest. Forty "chart-puppets" are sorted by their length.
The p25 value is 97
The p50 value is 120
The p75 value is 149
75% of all "chart-puppets" are smaller than p75, and 25% is larger than p75.
50% of all "chart-puppets" are smaller than p50, and 50% is larger than p50 (= median).
25% of all "chart-puppets" are smaller than p25, and 75% is larger than p25.
IQR = 149 - 97 = 52
Extreme outlier limit max: p75 + IQR*3 = 149 + 52*3 = 305
Mild outlier limit max: p75 + IQR*1.5 = 149 + 52*1.5 = 227
Mild outlier limit min: p25 - IQR*1.5 = 97 - 52*1.5 = 19
Extreme outlier limit min: p25 - IQR*3 = 97 - 52*3 = -59
In this example there are no outliers to be found, all values are located between p25 - IQR*1.5 (19) and p75 + IQR*1.5. (227)
🔹 Source settings
Note that results are dependable on the chosen source (settings). When, for example, close is chosen as the source, only intrabar close prices are included. This means a low or high can stretch further then the min or max.
Here we can see different results with different source settings
🔹 LTF settings
When 'Auto' is enabled (Settings, LTF), the LTF will be the nearest possible x times smaller TF than the current TF. When 'Premium' is disabled, the minimum TF will always be 1 minute to ensure TradingView plans lower than Premium don't get an error.
Examples with current Daily TF (when Premium is enabled):
500 : 3 minute LTF
1500 (default): 1 minute LTF
5000: 30 seconds LTF (1 minute if Premium is disabled)
🔶 SETTINGS
Source: Set source at close, high, low,...
🔹 LTF
LTF: LTF setting
Auto + multiple: Adjusts the initial set LTF
Premium: Enable when your TradingView plan is Premium or higher
🔹 Intrabar Delta : Colors, dependable on different circumstances.
Up: Price goes up, with more bullish than bearish intrabar volume.
Up-: Price goes up, with more bearish than bullish intrabar volume.
Down: Price goes down, with more bearish than bullish intrabar volume.
Down+: Price goes down, with more bullish than bearish intrabar volume.
🔹 Table
Show table: Show details at the top right corner
Show TF: Show LTF at the bottom right corner
Text color/table size
See DETAILS for more information
Options Series - Dynamic Support & Resistance
🌟 Key Features & How It Works:
⭐ Dynamic Support and Resistance Management:
The script dynamically calculates and draws support and resistance lines based on pivot highs and pivot lows. Unlike static levels that remain unchanged, these lines are updated in real-time. When a support or resistance level is breached, the corresponding line is automatically deleted, keeping the chart clean and relevant. This feature ensures that the trader is always looking at valid support and resistance levels based on the current price action.
⭐ Use of Arrays for Line Management:
The script utilizes arrays to store and manage support and resistance lines (array.new_line(0)). This is a more advanced feature of Pine Script v5, allowing for efficient handling of multiple lines on the chart. By using arrays, the script can easily track and manipulate multiple lines (adding, removing, updating), ensuring that the chart remains optimized for real-time analysis.
⭐ Customizable Inputs for Flexibility:
The script includes user inputs for the pivot length and the line width, making it adaptable to different trading styles and preferences. The pivot length determines how sensitive the indicator is to price changes, while the line width allows traders to customize the visual representation of support and resistance levels. These inputs add flexibility and make the script accessible to a broad range of traders.
⭐ Efficient Breach Detection Mechanism:
The isBreached function is a key part of the script. It checks whether the current price has breached any of the existing support or resistance levels. If a breach is detected (i.e., the price crosses below a support or above a resistance), the respective line is deleted, ensuring that only active and valid lines remain on the chart. This automatic update feature reduces the need for manual intervention, helping traders stay focused on key price levels.
⭐ Visual Clarity and Chart Cleanliness:
By deleting breached lines, the script ensures that the chart does not become cluttered with outdated or irrelevant lines. This visual clarity is crucial for traders who rely on clean, simple charts for decision-making. Removing unnecessary information helps traders make faster, more confident decisions based on the current market structure.
⭐ Scalability for Multiple Timeframes:
The use of pivot points makes the script adaptable to different timeframes, from intraday scalping to longer-term swing trading. By changing the pivot length, traders can optimize the indicator for different market environments, ensuring that it can be applied across various asset classes and timeframes.
⭐ Practical for Range-bound and Breakout Trading:
This script is particularly effective for traders who focus on range-bound markets or breakout strategies. It allows them to quickly identify areas where price is likely to reverse (support/resistance) or break out (when support/resistance is breached), providing real-time insight into market dynamics.
⭐ Simplification of Price Action Analysis:
By automating the calculation of pivots and management of support/resistance levels, the script simplifies price action analysis. Traders no longer need to manually draw or monitor these levels, which is a common task in technical analysis. This provides an edge, as it reduces the time spent on chart preparation and helps focus on executing trades.
⭐ Originality:
The script "Options Series - Pivot Based Support & Resistance" is an original approach to generating support and resistance levels using pivot points. Pivot-based techniques are popular, but the script introduces an automated dynamic way of drawing support and resistance lines, tracking breaches, and deleting lines when they are no longer valid. This aspect adds a refreshing layer of interactivity and functionality that sets it apart from basic pivot point scripts. The use of arrays to store and manage multiple support and resistance lines is also a good application of Pine Script’s newer array functionalities.
⭐ Uniqueness of the Script:
The script stands out due to its dynamic management of support and resistance lines. Unlike traditional scripts that simply plot static pivot points, this one evolves with the market by removing broken levels, ensuring only valid support and resistance lines are visible on the chart. This is particularly useful for traders who focus on clean charting. The use of arrays to store and manage the lines, alongside the efficient deletion of lines when breached, demonstrates a solid understanding of Pine Script v5's advanced features, such as array manipulation.
🚀 Conclusion:
This script stands out for its real-time adaptability, dynamic support/resistance management, and efficient use of Pine Script’s advanced features. It a powerful tool for both novice and advanced traders.
The script is an indicator designed to draw support and resistance levels based on pivot highs and lows, dynamically removing lines when they are breached. If a price crosses a support or resistance level, the respective line is deleted, ensuring the chart reflects the current state of support and resistance accurately.
Advanced BB Bands with PlotThis code implements an advanced version of Bollinger Bands with additional moving averages, ATR-based bands, step lines, market direction indicators, and real-time data display. Here’s a breakdown of the functionality:
1. Inputs and Parameters:
length: The base period used for calculating the moving averages and the typical price.
atr_length: The length used for calculating the Average True Range (ATR).
step_length: The period for calculating step lines (highest high and lowest low over a given period).
2. Core Calculations:
Typical Price: (high + low + close) / 3 is the base for the moving averages.
ATR: ta.atr(atr_length) is used to create dynamic bands around the moving averages.
PL Dot: An average of the typical prices from the current and past two bars. This provides a short-term trend indicator.
3. Multiple Moving Averages (MAs):
Three simple moving averages (ma1, ma2, ma3) are calculated using different multiples of the base length. These help indicate short-, mid-, and long-term trends.
4. Step Lines:
Step Up: Highest close over the step_length.
Step Down: Lowest close over the step_length. These act as short-term support and resistance levels.
5. Outer Bands:
Upper Band: ma1 + 2 * ATR, an upper boundary based on ATR volatility.
Lower Band: ma1 - 2 * ATR, a lower boundary. Together, these form a dynamic range around the short-term moving average.
6. Market Direction:
Bullish or Bearish condition is determined by comparing ma1 and ma2. If ma1 is above ma2, the market is bullish; otherwise, it's bearish. This decision is displayed on the TradingView chart using a table.
7. Visual Elements:
Moving Averages (ma1, ma2, ma3): Plotted in different colors (blue, purple, white) to indicate different timeframes.
PL Dot: A step line plot for the PL Dot, which helps in spotting short-term trends.
Step Lines: Step-up and step-down levels plotted in lime and red, respectively.
Outer Bands: Upper and lower ATR-based bands plotted in aqua, with a filled region between the bands for easy visualization of price volatility.
Candlestick Coloring: Green bars for bullish and red for bearish price action.
8. Real-Time Board Display:
A table is created in the top-right corner of the chart to display:
The current closing price.
The market direction ("Bullish" or "Bearish").
The PL Dot value. The table updates on the most recent bar (barstate.islast).
9. Dynamic Labels:
On the most recent bar, labels are added dynamically to the upper and lower bands and the ma1. These labels help in identifying the values of key indicators directly on the chart.
10. Signals and Alerts:
Bullish and Bearish Cross: Visual signals are plotted on the chart when ma1 crosses above or below ma2. These are represented as up and down triangles, providing potential buy/sell signals.
Key Features Summarized:
Multi-Timeframe Moving Averages: 3 MAs based on different timeframes.
Dynamic ATR Bands: ATR-based upper and lower boundaries for volatility measurement.
Step Lines: Short-term high and low lines for support/resistance.
PL Dot: A short-term trend identifier.
Real-Time Dashboard: Live updates of price, trend, and PL Dot on the chart.
Visual Alerts: Dynamic labeling and crossover signals to assist in decision-making.
This script is designed for traders who want to track price movement within bands, evaluate trends across multiple timeframes, and visualize short-term market direction with dynamic alerts.